package com.anjubao.parking.municipal.parkinglot.form;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.List;

@Data
@NoArgsConstructor//无参构造
@AllArgsConstructor//全参构造
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value = "ParkingLotAddForm",description = "验证创建停车场对象")
public class ParkingLotAddForm  {

	@NotBlank
	@ApiModelProperty(value="停车场名称",required = true)
	private String name;

	@NotBlank
	@ApiModelProperty(value="停车场详细地址信息",required = true)
	private String location;

	@NotNull
	@ApiModelProperty(value="停车场类型 1:封闭式,2:路内 ",required = true)
	private Integer type;
	@NotNull
	@ApiModelProperty(value="经度-10位,小数6位",required = true)
	private Double latitude;

	@NotNull
	@ApiModelProperty(value="纬度-10位,小数6位",required = true)
	private Double longitude;

	@ApiModelProperty(value = "所属单位")
	private String affiliatedTo;

	@ApiModelProperty(value = "经营者id")
	private Long operatorId;

	@NotNull
	@ApiModelProperty(value = "车位数",required = true)
	private Integer totalSlots;

	@ApiModelProperty(value = "出口数")
	private Integer exits;

	@ApiModelProperty(value = "入口数")
	private Integer entries;

	@ApiModelProperty(value = "保留车位数")
	private Integer reservedSlots;


	@ApiModelProperty(value = "视频桩数量")
	private Integer videoPorts;

	@ApiModelProperty(value = "地磁数量")
	private Integer geomagnetismPorts;

	@ApiModelProperty(value = "地理位置图片")
	private String geoImgUrl;

	@ApiModelProperty(value = "全景图片")
	private String panoramaImgUrl;

	@NotNull
	@ApiModelProperty(value = "停车场所在省份ID",required = true)
	private Integer provinceId;

	@NotBlank
	@ApiModelProperty(value = "停车场所在省份名称",required = true)
	private String provinceName;

	@NotNull
	@ApiModelProperty(value = "停车场所在城市ID",required = true)
	private Integer cityId;

	@NotBlank
	@ApiModelProperty(value = "停车场所在城市名称",required = true)
	private String cityName;

	@NotNull
	@ApiModelProperty(value = "停车场所在区域ID",required = true)
	private Integer districtId;

	@NotBlank
	@ApiModelProperty(value = "停车场所在区域名称",required = true)
	private String districtName;

	@ApiModelProperty(value = "停车场状态 1:正常 0:禁用")
	private Integer status=1;

	@ApiModelProperty(value = "收费规则 支持多选",required = true)
	private List<String> billRuleCodes;
}
